With the miniaturization of computing devices, it has become increasingly more important to maximize the use of computing device storage capabilities. Data compression refers to reducing the amount of space or bandwidth needed to store or transmit a block of data used in communications, facsimile transmissions, file storage and file transfer. Consumer computing devices, such as phones incorporating a display, are increasing in popularity. With a receiver and a display, data representing any geographical location can be transmitted and displayed in a visual format. For example, it has become increasingly popular to provide maps displaying streets and highways, points of interest, such as restaurants, over a communication network for downloading onto a cellular phone or other computing device. As many consumers now carry cell phones virtually all the time, a map displaying such information can prove very useful. However, map objects such as roads, rivers, lakes, political divisions, points of interest, etc., require a large volume of data. Because of the limited storage capability of many consumer computing devices, the technique of compressing the data (both in terms of computation and in terms of degree of compression) should be very efficient. In conventional data compression algorithms, the entire data file (for example, data representing the entire continental United States) is provided as a single monolithic block of data, which cannot be edited or updated. The data being in a single monolithic block limits its usefulness.
In general, there are two kinds of compression: “lossy” and “lossless.” Lossy compression means that some data fidelity is lost when compressing, generally, for the purpose of boosting compression ratios. Lossless compression does not lose any fidelity, but is harder to achieve good compression ratios.
Given the limited storage space of computing devices, it would be desirable to develop a set of compression algorithms that achieve comparable compression ratios as conventional compression algorithms, but wherein the data can be modular, so that a user may be provided only with the data, which is on interest, rather than the entire block of data, much of which may be irrelevant and which only takes up storage space. The present invention achieves this objective and has further related advantages.